﻿
using System.ComponentModel.DataAnnotations;

namespace LeaderCCSLaserUI.Data
{
    public class MPoint
    {
        public double X { get; set; }
        public double Y { get; set; }
        public double Z { get; set; }
    }
    public class XYZPoint : MPoint
    {
        [Key]
        public int Id { get; set; }
        public string? Name { get; set; }
        public string? Alias { get; set; }
        public int Hand { get; set; }
        public int PcsOrder { get; set; }
        public double X1 { get; set; }
        public double Y1 { get; set; }
        public bool IsUse { get; set; }
        public double H { get; set; }
        public int LazerDocumentIndex { get; set; }
        public int ProductIndex { get; set; }
    }
    public class FlyGrabPoint : MPoint 
    {
        [Key]
        public int Id { get; set; }
        public int PcsOrder { get; set; }
        public int Hand { get; set; }
        public int Track { get; set; }//飞拍次序
        public int Kind { get; set; }//0:定点拍照 1:飞拍 2:飞拍路径
        public bool UseLight1 { get; set; }//使用光源1
        public bool UseLight2 { get; set; }//使用光源2
    }
    public class BarcodePoint : MPoint
    {
        [Key]
        public int Id { get; set; }
        public int ProductIndex { get; set; }//产品次序
        public int Kind { get; set; }//0：产品码 1：载具码 2:FPC码
        public double ExposureTime { get; set; }//曝光时间
        public bool UseLight1 { get; set; }//使用光源1
        public bool UseLight2 { get; set; }//使用光源2
        public int Hand { get; set; }//0：左手扫码 1：右手扫码
        public double Rec1Row1 { get; set; }//识别区域
        public double Rec1Column1 { get; set; }//识别区域
        public double Rec1Row2 { get; set; }//识别区域
        public double Rec1Column2 { get; set; }//识别区域
    }
    public class ZControlPoint
    {
        public int Id { get; set; }
        public string Barcode { get; set; }//载具码
        public int Hand { get; set; }
        public int PcsOrder { get; set; }
        public string Name { get; set; }
        public double ZPos { get; set; }//Z坐标
        public double Dist { get; set; }//压缩量
        public double UpLimit { get; set; }//范围+
        public double LowLimit { get; set; }//范围-
    }
}
